package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 流程审核业务对象 process_check
 *
 * @author ruoyi
 * @date 2024-04-10
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class ProcessCheckBo extends BaseEntity {

    /**
     *
     */
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 流程id
     */
    @NotBlank(message = "流程id不能为空", groups = { AddGroup.class, EditGroup.class })
    private String processId;

    /**
     * 状态0:待审核1：通过2：驳回
     */
    private String state;

    /**
     * 抄送人id列表
     */
    private List<Integer> copyFor;

    /**
     * 流程类型

项目转化审批：xmzh
成果交付审批:cgjf
归档审批:gd
复盘审批:fp
日报评审:rb
周报评审:zb
月报评审:yb
     */
    @NotBlank(message = "流程类型 ", groups = { AddGroup.class, EditGroup.class })


    private String processType;

    /**
     * 审核人id列表
     */
    @NotEmpty(message = "审核人id列表不能为空", groups = { AddGroup.class, EditGroup.class })
    private List<Integer> checkPeopleIds;

    private String stage;


}
